Mobile phones have so far been used mostly for making voice calls and for communicating short text messages, such as SMS (Short Message Service) messages. Further, Internet browsing has rapidly become very popular and in recent years, the wireless and Internet domains are converging. Mobile devices are now available, having functionality for connecting to the Internet over a wireless access network to obtain information and services from servers located throughout the world. These mobile devices are equipped with some web browsing functionality, e.g. WAP (Wireless Application Protocol) telephones and PDAs (Personal Digital Assistants).
Today, work is in progress for developing a multitude of new mobile services which will be possible to employ in particular as new technology for mobile communication is introduced, providing greater network capacity and higher transmission bitrates. By way of example, GPRS (General Packet Radio Service) and WCDMA (Wideband Code Division Multiple Access) networks are currently emerging. The contents of the new services will include text, images, audio files and video files in various different formats and combinations. More sophisticated mobile devices are also becoming available on the market, provided with functionalities matching the new services.
In particular, mobile instant messaging and presence services are rapidly becoming very popular. Instant messaging is familiar from the world of fixed desktops, including message status reporting and various group and contact list features. Presence services involve information on the location of other mobile terminals, and enable users to receive messages according to their own created profile and availability. A user profile is mainly personal and may be defined by preferences, interests and hobbies, as well as more temporary factors, such as user availability and moods. Messages can also be delivered depending on present location, availability and capabilities of the user's mobile device.
In order to provide a unified technology for these and other services, specifications and standards are developed for exchanging messages and presence information between mobile terminals, to be fully interoperable with existing Internet and web technologies. If standards are established and fully employed, mobile users may communicate and use the new services globally.
The mobile services are available from service providers by connecting to a server of the service provider, typically over the Internet. A service provider may have one or more physical server entities or a server system. In the following description, the term server represents any combination of physical server entities providing a single access point in the perspective of mobile terminals.
When a mobile terminal connects to a server for making a service request, a service negotiation must first take place for setting up the context of a session and for establishing which services that can be used. The mobile terminal will have certain capabilities, e.g., supporting different means of communication, media types and service features. On the other side, the connected server will support only certain services as well. Since there will be a multitude of mobile terminals having different capabilities, as well as servers supporting different services, only those services can be used that are supported by both the requesting mobile terminal and the server, which will be referred to as “usable services” hereafter. As the usable services have been determined, they are enabled in the mobile terminal and may be presented to a user, e.g., in a menu on a screen.
After some initial login and/or security routine, the service negotiation is initiated by the mobile terminal transmitting a service request message containing a list of requested services. If a mobile terminal receives in response thereto a message from the server containing a list of all the services that are available from the server, the mobile terminal would need to compare the received service list with its own capabilities and calculate which services that can be used out of those offered. This procedure requires signalling transactions of large size and considerable computer processing in the mobile terminal.
It is a problem that mobile terminals typically have a limited computing power capacity and memory capacity, and operate in radio environments with limited bandwidth. Therefore, it is highly desirable that the number of messages and amount of information are minimised during service negotiations for reducing the load on transmission resources. It is also desirable to reduce the processing efforts required in the mobile terminals for executing service negotiations, in order to reduce delays and battery consumption.